package com.sfpay.coreplatform.member.common.util;

import java.util.List;

public class StringUtil {

	/**
	 * 
	 *
	 * 方法说明：str是否为null
	 *
	 * @param str
	 * @return true:为null或者""
	 */
	public static boolean isStrNull(String str)
	{
		return null == str ||"".equals(str);
	}
	
	/**
	 * 
	 *
	 * 方法说明：Object 是否为null
	 *
	 * @param obj
	 * @return
	 */
	public static boolean isObjectNull(Object obj)
	{
		return null == obj;
	}
	
	/**
	 * 
	 *
	 * 方法说明：数组是否为null
	 *
	 * @param strArr
	 * @return
	 */
	public static boolean isArrNull(String... strArr)
	{
		if(null == strArr)
		{
			return false;
		}
		else
		{
			for(String tmp:strArr)
			{
				if(isStrNull(tmp))
				{
					return false;
				}
			}
		}
		return true;
	}
	
	/**
	 * 
	 *
	 * 方法说明：基本类型的对象数组转化为String
	 *
	 * @param arrObj
	 * @return
	 */
	public static String listToString(List<?> list)
	{
		StringBuffer sbuff = new StringBuffer();
		String retStr = "";
		if(null == list || list.size() == 0)
		{
			return "";
		}
		
		for(Object obj:list)
		{
			sbuff.append(obj+";");
		}
		retStr = sbuff.toString();
		sbuff.delete(0 , sbuff.capacity());
		return retStr;
	}
	
	/**
	 * 
	 *
	 * 方法说明：基本类型的对象数组转化为String
	 *
	 * @param arrObj
	 * @return
	 */
	public static String arrayToString(Object[] arrObj)
	{
		StringBuffer sbuff = new StringBuffer();
		String retStr = "";
		if(null == arrObj || arrObj.length == 0)
		{
			return "";
		}
		for(Object obj:arrObj)
		{
			sbuff.append(obj+";");
		}
		retStr = sbuff.toString();
		sbuff.delete(0 , sbuff.capacity());
		return retStr;
	}
	
	
	/**
	 * 
	 *
	 * 方法说明：str1,str2...比较str1是否与后面其中一个元素相等
	 *
	 * @param strs
	 * @return true至少存在一个与str1相等,false 一个都不存在
	 */
	public static boolean isArbitrarilyEqual(String... strs)
	{
		if(null  != strs && strs.length > 1)
		{
			String fristElement = strs[0];
			for(int i= 1;i<strs.length;i++)
			{
				if(fristElement.equals(strs[i]))
				{
					return true;
				}
			}
		}
		return false;
	}
	
	/**
	 * 
	 *
	 * 方法说明：str1,str2...比较str1是否与全部元素都相等
	 *
	 * @param strs
	 * @return true str1与后面元素都相等,false至少存在一个不相等
	 */
	public static boolean isEachEqual(String... strs)
	{
		
		if(null  != strs && strs.length > 1)
		{
			String fristElement = strs[0];
			for(int i= 1;i<strs.length;i++)
			{
				if(!fristElement.equals(strs[i]))
				{
					return false;
				}
			}
		}
		return true;
	}
	
	
	public static void main(String[] args)
	{
		
	}
}
